package basicutil.pipeline;

import basicutil.pipeline.core.ProcessorStage;

import java.util.List;

/**
 * 节点处理逻辑接口
 */
public interface Processor {
    /**
     * 处理输入消息并产生输出
     *
     * @param inputs 输入消息列表
     * @param node   当前处理节点
     * @return 输出映射 (输出端口ID -> 输出数据)
     */
    List<DataMessage> process(List<DataMessage> inputs, ProcessorStage node);

    default String save(){
        return this.getClass().getName();
    }

}
